using SheLife.Domain.Entities;

namespace SheLife.Domain.Interfaces.Repositories
{
    /// <summary>
    /// 用户食谱仓储接口
    /// </summary>
    public interface IUserRecipeRepository : IRepository<UserRecipe>
    {
        Task<IEnumerable<UserRecipe>> GetByUserIdAsync(Guid userId);
        Task<IEnumerable<UserRecipe>> GetByUserIdAndDateRangeAsync(Guid userId, DateTime startDate, DateTime endDate);
        Task<IEnumerable<UserRecipe>> GetByRecipeIdAsync(Guid recipeId);
        Task<IEnumerable<UserRecipe>> GetFavoriteRecipesByUserIdAsync(Guid userId);
        Task<bool> IsRecipeFavoriteAsync(Guid userId, Guid recipeId);
    }
}